package io.terminus.spzx.manager.mapper;

import io.terminus.spzx.model.dto.product.CategoryBrandDto;
import io.terminus.spzx.model.entity.product.Brand;
import io.terminus.spzx.model.entity.product.CategoryBrand;
import org.apache.ibatis.annotations.Mapper;

import java.util.List;

/**
 * @Author lichunlong lcl253137@alibaba-inc.com
 * @Desc 分类品牌管理Mybatis Mapper
 * @Date 2024-10-08
 */
@Mapper
public interface CategoryBrandMapper {

    /**
     * 分页查询分类品牌
     *
     * @param categoryBrandDto 查询条件
     * @return 分类品牌分页列表
     */
    List<CategoryBrand> findByPage(CategoryBrandDto categoryBrandDto);

    /**
     * 根据分类ID查询品牌
     *
     * @param categoryId 分类ID
     * @return 品牌列表
     */
    List<Brand> findBrandByCategoryId(Long categoryId);

    /**
     * 添加分类品牌
     *
     * @param categoryBrand 分类品牌
     */
    void save(CategoryBrand categoryBrand);

    /**
     * 修改分类品牌
     *
     * @param categoryBrand 分类品牌
     */
    void updateById(CategoryBrand categoryBrand);

    /**
     * 删除分类品牌
     *
     * @param id 分类品牌ID
     */
    void deleteById(Long id);
}
